package com.ycyoes.demos.netty.demo.protocol;

public interface Serializer {

    //JSON序列化
    byte JSON_SERIALIZER = 1;

    Serializer DEFAULT = new JSONSerializer();

    //序列化算法
    byte getSerializerAlgorithm();

    //Java对象转换成二进制数据
    byte[] serialize(Object object);

    //二进制数据转换成Java对象
    <T> T deserialize(Class<T> clazz, byte[] bytes);

    static Serializer getSerializer(byte bytes) {
        return DEFAULT;
    }
}
